在linux中,虚拟化可以扩大硬件的容量,简化软件的重新配置过程。linux虚拟化的优势:1、资源超分;2、降低资金成本和运维成本;3、最大限度减少或消除停机;4、提高IT部门的工作效率、效益、敏捷性和响应能力;5、加快应用和资源的调配速度;6、提高业务连续性和灾难恢复能力;7、简化数据中心管理;8、减少端口的冲突。
linux虚拟化是什么
虚拟化(Virtualization)是一种资源管理技术,是将计算机的各种实体资源(CPU、内存、磁盘空间、网络适配器等),予以抽象、转换后呈现出来并可供分割、组合一个或多个计算机配置环境,并重新分割、重新组合,以达到最大化合理利用物理资源的目的。
虚拟化技术是一种将计算机物理资源进行抽象、转换为虚拟的计算机资源提供给程序使用的技术。这里所指的计算机资源,就包括了 CPU 提供的运算控制资源,硬盘提供的数据存储资源,网卡提供的网络传输资源等。
虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率——百度百科。虚拟化主要指的是特殊的技术,通过隐藏特定计算平台的实际物理特性,为用户提供抽象的、统一的、模拟的计算环境(称为虚拟机)——IBM定义。
虚拟化优点
(1)资源超分,如物理内存128G,可以给虚拟机分配200G内存,一般在测试环境使用,生产环境一般不推荐。
(2)降低资金成本和运维成本
(3)最大限度减少或消除停机
(4)提高IT部门的工作效率、效益、敏捷性和响应能力
(5)加快应用和资源的调配速度
(6)提高业务连续性和灾难恢复能力
(7)简化数据中心管理
(8)真正的Software-Defined Data Center的可用性
(9)减少端口的冲突
常见的虚拟化厂商及产品
系列 |
常见PC/服务器端版本 |
VMware |
VMware Workstation、vSphere |
Microsoft |
VirtualPC、Hyper-V |
RedHat |
KVM、RHEV |
Oracle |
Oracle VM VirtualBox |
Citrix |
Xen |
安装虚拟化服务器平台(KVM)
1、主要软件包
qemu-kvm为kvm提供底层仿真支持
libvirt-daemon libvirtd守护进程,管理虚拟机
libvirt-client 用户端软件,提供客户端管理命令
libvirt-daemon-driver gemu libvirtd 连接gemu的驱动
virt-manager 图形管理工具
2、准备工作
1)准备一台设备(这里博主准备一台Centos7的服务器)
2)关闭SELinux、防火墙(可能导致虚拟机内部无法通信)
3)安装KVM相关包,命令如下
yum -y install kvm bridge-utils virt-v2v libgesttfs-tools libcanberra-gtk2 qemu-kvm.x86_64 qemu-kvm-tools.86_64 libvirt.x86_64 libvirt-cim.x86_64 libvirt-client.x86_64 lsbvirt-java.noarch libvirt-python.x86_64 libiscsidbus-devel virt-clone tunctl virt-manager python-virtinst virt-vieeer virt-top dejavu-lgc-sans-fonts nfs-utils epel-release
3、启动libvirtd服务端
libvirtd 为管理虚拟机提供服务接口,提供DNS、DHCP等功能
1)命令
systemctl restart libvirtdsystemctl restart libvirtd
2)实例
[root@wangwu ~] systemctl restart libvirtd[root@wangwu ~] systemctl restart libvirtd
4、打开管理工具
1)命令
virt-manager
2)实例
[root@wangwu ~] virt-manager
5、点击图标创建一台新的虚拟机
6、选择安装操作系统的方式
这里选择“Local install media (ISO image or CDROM)”后,点击“ForWard”
注:
1)Local install media (ISO image or CDROM)
本地安装介质(ISO镜像或CDROM)
2)Network Install(HTTPFTPor NFS)
网络安装(HTTP、FTP或NFS)
3)Network Boot(PXE)
网络引导(PXE)
4)Import existing disk image
导入现有磁盘镜像
7、查找安装介质
选择“Use ISO image”,点击“Browse...”选择ISO镜像位置后点击“ForWard”
注:
1)Use CDROM or DVD
使用光盘或 DVD
2)Use ISO image
使用ISO镜像
3)Automatically detect operating system based on install media
自动检测操作系统上的基础安装介质
8、设置内存大小和CPU数量,设置完毕后点击“ForWard”
9、创建虚拟磁盘
勾选“Enable storage for this virtual machine”,创建并设置磁盘容量,点击“ForWard”
注:
1)Enable storage for this virtual machine
为虚拟机启用存储
2)Create a disk image for the virtual machine
为虚拟机创建磁盘映像
3)Select or create custom storage
选择或创建自定义存储
10、准备开始安装,设置好虚拟机名称,点击“Finish”
注:
1)Name:虚拟机名称
2)OS:系统名称
3)Install:安装操作系统方式
4)Memory:内存大小
5)CPUs:处理器数量
6)Storage:存储容量与位置
7)Customize configuration before install:安装前自定义配置
8)Network selection:网络设置
四、操作虚拟机
1、使用virsh命令工具
virsh命令工具提供管理各虚拟机的命令接口,支持交互模式,包括查看、创建、停止、关闭等功能。
1)常用格式
virsh 控制指令 虚拟机名称 参数
2)命令
virsh
3)实例
[root@wangwu~]启动virsh命令工具欢迎使用virsh,虚拟化的交互式终端输入:'help'来获得命令的帮助信息'quit'退出virsh
2、查看虚拟化信息
查看KVM节点(服务器)信息
1)命令
virsh nodeinfo
2)实例
[root@wangwu ~]virsh nodeinfo 查看KVM节点(服务器)信息CPU 型号: x86_64CPU: 1CPU 频率: 2600 MHzCPU socket: 1每个 socket 的内核数: 1每个内核的线程数: 1NUMA 单元: 1内存大小: 1,048,576 KiB
列出虚拟机状态
1)命令
virsh list --all
2)实例
[root@wangwu ~]virsh list --all 列出所有虚拟机的状态Id Name State6 centos7.0 shut off
查看指定虚拟机的信息
1)命令
virsh dominfo 虚拟机名称
2)实例
[root@wangwu ~]virsh dominfo centos7.0 查看centos7.0虚拟机的信息Id: 6名称: centos7.0UUID: 78fa5915-c060-4731-b4c5-bd4aaaea8feeOS 类型: hvm状态: runningCPU: 1CPU 时间: 28.7s最大内存: 1048576 KiB使用的内存: 1048576 KiB持久: 是自动启动: 禁用管理的保存: 否安全性模式: none安全性 DOI: 0
3、虚拟机开关机操作
启动|重启|关闭 指定的虚拟机
1)命令
virsh start 虚拟机名称virsh reboot 虚拟机名称virsh shutdown 虚拟机名称
2)实例
[root@wangwu ~]virsh start centos7.0 启动centos7.0虚拟机Domain centos7.0 started[root@wangwu ~]virsh 验证Id Name State6 centos7.0 running
[root@wangwu ~]virsh shutdown centos7.0 关闭centos7.0虚拟机Domain centos7.0 is being shutdown[root@wangwu ~]virsh list --all 验证Id Name State- centos7.0 shut off
强制关闭指定的虚拟机
1)命令
virsh destroy 虚拟机名称
2)实例
[root@wangwu ~] virsh destroy centos7.0 强制关闭centos7.0虚拟机Domain centos7.0 destroyed[root@wangwu ~] virsh list --all 验证Id Name State- centos7.0 shut off
将指定的虚拟机设为|取消开机自动运行
1)命令
virsh autostart 虚拟机名称virsh autostart --disable 虚拟机名称
2)实例
[root@wangwu ~] virsh autostart centos7.0 设置centos7.0虚拟机自启动 Domain centos7.0 marked as autostarted[root@wangwu ~] virsh dominfo centos7.0 验证Id:Name: centos7.0... ... ...Autostart: enable... ... ...
[root@wangwu ~] virsh autostart --disable centos7.0 取消centos7.0虚拟机自启动 Domain centos7.0 unmarked as autostarted[root@wangwu ~] virsh dominfo centos7.0 验证Id:Name: centos7.0 ... ... ...Autostart: disable... ... ...